This application claims priority from Japanese Patent Application No. 11-180859, filed Jun. 25, 1999, the contents of which are incorporated hereinto by this reference.
1. Field of the Invention
The present invention relates to an apparatus and a method for generating harmony tones based on given voice signals and performance data, and more particularly to such an apparatus and a method in which a voice wave signal is given as a reference voice signal and performance data are inputted in plural kinds of performance data as note pitch designating data from plural kinds of performance devices and in which the pitch of the voice wave signal is modified based on the performance data, so that harmony voice tone signals are generated in a voice determined by the given voice wave signal and with tone pitches determined by the inputted performance data.
2. Description of the Prior Art
There have conventionally been known in the art such an apparatus of a data processing type as receives a voice wave signal and performance data and generates harmony voice tones in a voice determined by the voice wave signal and with tone pitches determined by the performance data. For example, where a singer""s or a talker""s human voice signal or a musician""s instrumental voice signal is being inputted to the apparatus, a player designates note pitches or chords by manually performing music on a musical keyboard of the apparatus, and then the apparatus generates another voice signal whose voice (timber) is determined by the inputted human voice or instrumental voice and whose tone pitch is determined by the performance data representing the player-designated note pitch or chord, thus the generated voice signal make a harmony voice with respect to the inputted voice. An example of such an apparatus has a vocal harmony function operating in a vocoder harmony mode and/or in a chordal harmony mode. Under the vocoder harmony mode, when a voice signal is given such as by singing a song, speaking words or playing a musical instrument, and concurrently the keys on the musical keyboard are manipulated, the apparatus produces a harmony tone in the voice of the inputted voice but with such different pitches than the given voice as are designated by the manipulated key in the keyboard. Under the chordal harmony mode, when a voice signal is given and a chord is played on the keyboard, the apparatus recognizes the played chord and produces harmony tones in the voice of the inputted voice but with pitches of the chord constituent notes. The generated harmony tones may be produced as musical sounds together with the original voice sound to present harmonious sensation, or may be produced alone as musical sounds to present a second melody line with respect to the original melody line. The second melody line thus produced will give harmonious sensation if performed afterward simultaneously with the original melody line, and therefore may be termed as a harmony melody line.
There have conventionally been known in the art various types of musical tone producing apparatus from the viewpoint of performance data supply, such as a type in which the performance data are inputted or supplied by manipulating keys in a keyboard for a direct real time performance, a type in which the performance data are obtained by reading out recorded performance data from an automatic performance data storage device, and a type in which the performance data are received from an external MIDI apparatus or other musical apparatus connected to the musical tone producing apparatus. But, there has never been known in the art, as far as the inventor is aware of, a musical tone producing apparatus in which a limited number of resources such as harmony tone generating channels are used concurrently in common to a plurality of different performance data supplying modules to generate harmony tones.
On the contrary, with a known type of musical tone producing apparatus having a function of generating harmony tones, a particular performance channel is fixedly assigned for designating tone pitches of the harmony tones to be produced. This type of apparatus is not flexible in harmony addition according to various performance data from various performance channels. Further, even though there may be provided some increased number of harmony tone generating channels, there may be a situation in which not all the intended harmony tones are generated or even some of the designated performance tones will not be generated, in case there are supplied performance data (pitch designating data) of too many performance notes in excess of a given number of tone generating channels.
Further, generation of harmony tones or the like will require the provision of such exclusive function modules in the apparatus, and hence the provision of so many of such special modules is hardly permitted for an apparatus of the normal size system configuration.
It is, therefore, a primary object of the present invention to solve the above-mentioned drawbacks involved in such a conventional apparatus or method of generating harmony tones and to provide improved music performing apparatus and method having a harmony tone generating function capable of generating harmony tones concurrently responsive to a plurality of different types of performance data supplying fashions such as a manual performance on a music playing keyboard containing manipulating keys for music performance, an automatic performance by reading out the stored music performance data from a storage device, and an externally controlled performance by MIDI data supplied from an external musical device so that harmony tone generation can be surely conducted in well balanced response to plural types of performance data flexibly.
In order to accomplish the object of the present invention, the invention provides a harmony tone generating apparatus comprising: a voice signal input module which receives a voice wave signal bearing tone pitches; a performance data input module which receives plural kinds of performance data from plural kinds of performance sources, the performance data containing plural data pieces, each defining a musical note having a pitch; a performance data capture module which captures a performance data piece that has been received latest among the data pieces contained in the performance data received from the plural kinds of performance sources; and a harmony tone data generating module which generates harmony tone data representing a tone pitch determined by the note pitch defined by the data piece as captured by the performance data capture module to be used for generation of harmony voice signal with respect to the received voice wave signal.
The present invention further provides a storage medium for use in an apparatus for generating harmony tones, the apparatus being of a data processing type comprising a computer, the medium containing a program that is executable by the computer, the program comprising: a module of receiving a voice wave signal bearing tone pitches; a module of receiving plural kinds of performance data from plural kinds of performance sources, the performance data containing plural data pieces, each defining a musical note having a pitch; a module of capturing a performance data piece that has been received latest among the data pieces contained in the performance data received from the plural kinds of performance sources; and a module of generating harmony tone data representing a tone pitch determined by the note pitch defined by the data piece as captured by the performance data capture module to be used for generation of harmony voice signal with respect to the received voice wave signal.
The present invention still further provides a method for generating harmony tones comprising: a step of receiving a voice wave signal bearing tone pitches; a step of receiving plural kinds of performance data from plural kinds of performance sources, the performance data containing plural data pieces, each defining a musical note having a pitch; a step of capturing a performance data piece that has been received latest among the data pieces contained in the performance data received from the plural kinds of performance sources; and a step of generating harmony tone data representing a tone pitch determined by the note pitch defined by the data piece as captured by the performance data capture module to be used for generation of harmony voice signal with respect to the received voice wave signal.
The harmony tone data means in the context of the present invention the data which define tone pitches for the harmony voice wave signal to be generated in a voice determined with reference to the voice of the inputted voice wave signal, i.e. of the human voice or of the instrumental voice. The harmony tone data are generated by harmony tone data generating channels provided in the harmony tone generating module other than performance tone generating channels provided in the apparatus for processing the performance tones being designated by the performance data from the performance sources. The harmony tone data generating channels may include a function of generating harmony voice signals as integral processing channels, or there may be provided separate circuits for generating harmony voice signals receiving the harmony tone data from the harmony tone generating channels.
The harmony tone data generating channels may be assigned to the performance data pieces under the correspondence of one channel per captured performance data piece so that one harmony voice will be generated in response to one note designation from the performance source, or alternatively under the correspondence of plural channels per captured performance data piece so that plural harmony voices will be generated in response to one note designation from the performance source. In the latter correspondence, the number of captured performance data pieces which can determine the tone pitches of the harmony tones will be limited to the number which is obtained by dividing xe2x80x9cthe number of channels provided in totalxe2x80x9d by xe2x80x9cthe number of channels assigned per captured performance data piece.xe2x80x9d There may be provided some preferential conditions for capture among plural kinds of performance sources where there may be inputted performance data from different kinds of performance sources concurrently.
A typical example of harmony tone generation according to the present invention may be the generation of harmony voice wave signals in which a singer""s human voice wave signal is inputted to the apparatus from an external source such as a microphone and a record player and then a player manipulates the musical playing keyboard to designate notes in performance to generate a harmony voice wave signal bearing tone pitches determined by the designated notes and a timber determined by the singer""s voice. Examples of the harmony voice generation are a vocoder type of voice generation and a chordal type of voice generation. The voice wave signal inputted from external devices may be human voices (singing a song or speaking words), musical instrument voices under live performance, any kind of sounds from the natural world, or any artificial sound signals and may be supplied from a microphone or any audio playback device in the form of analog signals. The voice of the harmony tones are in the same timber as the supplied voice or in a different (modified) timber than the supplied voice.
The present invention may be provided with a pitch shift function of harmony tone generation in which the harmony tones will be generated by shifting the tone pitches of the inputted voice wave signal irrespective of the performance data supplied from the performance sources. The pitch shift function includes a chromatic harmony mode in which the harmony tones will have tone pitches which are deviated from the pitches of the inputted voice signals by a predetermined amount of note interval and a detuned harmony mode in which the harmony tones will have tone pitches which are slightly deviated from the pitches of the inputted voice signals.
According to the present invention, at least two different kinds of performance data are inputted concurrently from different kinds of performance sources. For example, key-played performance data from a keyboard and externally derived performance data such as automatic performance data from a storage device and live performance data from an external musical instrument connected to the external input terminal of the apparatus of the present invention. In such a situation, the performance data pieces supplied from those plural performance sources will be captured instantaneously over the plural sources in common, and the latest captured ones are assigned to the available channels for the harmony tone data generation in a latest-preferred fashion to determine the tone pitch of the harmony tones to be generated concurrently. The harmony tone data generator includes a limited number of data generation channels, a limited number of the latest captured performance data pieces are assigned thereto for harmony data generation, truncating the oldest supplied performance data for new data assignment, where there is no empty channel left and newly captured performance data is supplied. For example, there are provided two harmony tone data generating channels, and two latest performed notes are captured to be assigned to the two harmony tone data generating channels to determine the pitches of two harmony tones to be generated. Harmony voice signals will be produced, by means of a voice signal synthesizer, with the tone pitches determined by the captured performance data and in a voice determined by the voice of the received voice wave signal. The original voice wave signal may be sounded in audible voice by means of a conventional audio signal processing device, and the performance data may also be sounded in audible music by means of a conventional tone generator.
Thus, a number of (for example, two) kinds of performance data from different performance sources such as automatic performance data read out from a storage device, manual performance data from a keyboard and music data supplied from an external apparatus can control the generation of harmony tones to generate harmony tones responsive to more than one performance data input concurrently with a simple configuration. Among the performance data from the different performance sources, a predetermined number of latest arrived note data pieces are captured to be used for determining the tone pitches of the harmony tones to be generated, irrespective of the differences in source kind. While the harmony tone generation will require the provision of special circuits or devices exclusively assigned thereto, and hence not so many of such circuits or devices can be provided from an economical point of view, the preferential capture of a limited number of performance notes will avoid such an economical disadvantage. And harmony tones under well balanced control by the performance sources can be realized.
In a preferred embodiment of the present invention, the number of harmony tone data generating channels and the number of latest captured notes from the performance sources are made equal to each other. For example, there are provided two harmony tone data generating channels, and the performance capture module is made to capture two latest performance notes. Where a certain harmony tone is being generated in response to a certain inputted performance note and there comes another performance note which will cause a harmony tone of the same tone pitch as such a certain harmony tone which is being generated, no new assignment will be made and the same harmony tone will be continued to be generated.
In another aspect of the present invention, plural harmony tone data generating channels are assigned to one note of the performance data so that the performance data representing one performed note will determine the pitches for plural harmony tones to be generated. In such a situation, the number of latest captured notes from the performance sources to be used to determined the pitches of the harmony tones to be generated will be determined by the number of such channels in total divided by the number of harmony tones to be generated per captured note. Further, in case a large plurality of performance notes are designated by the performance data from plural kinds of performance sources and there are not provided a sufficient number of harmony tone data generating channels for all of the designated notes, the notes to be captured for determining harmony tones will be employed from the supplied performance notes according to a predetermined preferential rule (priority order). Such a preferential capture from among plural kinds of performance sources will provide the well balanced generation of the harmony tones among the performance sources.
According to the present invention, the timbers of the harmony tones to be generated are determined by a reference voice signal which is an voice wave signal inputted externally from, for example, a microphone, while the pitches of the harmony tones to be generated are determined by the performed notes as represented by the performance data derived from different kinds of performance sources. Accordingly, harmony voices under the xe2x80x9cvocoder typexe2x80x9d control (in which the tone pitches of the harmony voices are determined according to the respective pitches of the performance notes) and those under the xe2x80x9cchordal typexe2x80x9d control (in which the tone pitches of the harmony voices are determined through a lookup table according to the chord designated by the chord performance) can be generated in response to variety of performance sources including a musical keyboard, a music data storage device and various kinds of external musical apparatuses, which will present variety of favorable vocal harmony tones.
According to the present invention, the apparatus can comprise a further type of harmony tone generation mode such as a chromatic harmony in which the pitches of the harmony tones are made to be a predetermined note interval (e.g. four semitones) apart from the pitch of the original voice signal and a detuned harmony in which the pitches of the harmony tones are made to be slightly (e.g. five cents) apart from the pitch of the original voice signal.
As will be understood from the above description about generating harmony tones, a sequence of steps each performing the operational function of each of the structural element modules of the harmony tone generating apparatus will constitute an inventive method for generating harmony tones according to the spirit of the present invention.
Further as will be understood from the above description about the apparatus and the method for generating harmony tones, a storage medium containing a program executable by a computer system, which program comprising program modules for executing a sequence of the processes each performing the operational function of each of the structural element modules of the above harmony tone generating apparatus or performing each of the steps constituting the above harmony tone generating method will reside within the spirit of the present invention.
Further as will be apparent from the description herein later, some of the structural element modules of the present invention are configured by a computer system performing the assigned functions according to the associated programs. They may of course be hardware structured discrete devices performing the same functions.
The present invention may take form in various components and arrangement of components including hardware and software, and in various steps and arrangement of steps. The drawings are only for purposes of illustrating a preferred embodiment and processes, and are not to be construed as limiting the invention.